#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

using namespace std;

struct stu
{
public:
    string name;
    string skill;
    long int ATK;
    int id;
public:
    stu() {}
    stu(string name ,string skill ,long int ATK ,int id) : name(name) , skill(skill) , ATK(ATK) ,id(id) {}
};

void printf_func(stu val)
{
    stu temp = val;
    cout << "姓名:" << temp.name << "\t技能:" << temp.skill << "\t\t战力值:" << temp.ATK <<"\t\t学号:" <<temp.id << endl;
}

int main(int argc, char const *argv[])
{
    vector<stu> s1;
    s1.push_back(stu("唐三","蓝银缠绕",100 ,1));
    s1.push_back(stu("萧炎","佛怒火莲",500 ,2));
    s1.push_back(stu("林动","大荒囚天指",1550 ,3));
    s1.push_back(stu("牧尘","灵阵,起",1005 ,4));
    s1.push_back(stu("陈平安","妈来!!!",1000 ,5));
    s1.push_back(stu("荒天帝","六道轮回",9999 ,6));
    
    for_each(s1.begin() ,s1.end() , printf_func);

    for_each(s1.begin(), s1.end() ,[&](stu val)
    {
        stu temp = val;
        //cout << "姓名:" << temp.name << "\t技能:" << temp.skill << "\t\t战力值:" << temp.ATK <<"\t\t学号:" <<temp.id << endl;
    });
    return 0;
}
